WPF不透明度动画设置控件IsEnabled = false

您所在的位置:网站首页 wpf 动画设置left后不生效 WPF不透明度动画设置控件IsEnabled = false

WPF不透明度动画设置控件IsEnabled = false

2023-08-24 08:05| 来源: 网络整理| 查看: 265

我正在尝试创建一个动画控件,根据提示(按空格)更改不透明度 .

动画本身可以正常工作 . 基于按键,不透明度动画和控制进入视野 . 我将动画放在包含其余内容的网格控件上 .

问题是:动画结束后,即使我手动(从代码隐藏)将其设置为true,网格的IsEnabled属性仍为“false” . 该命令不会引发异常,但实际上也不会更改属性 .

当我再次运行相同的动画但反向时,该值实际上变为“真” . 但当然,在那一刻它已经逐渐淡出 .

void Initialize() { // fade animation storyboard FadeAnimation = new DoubleAnimation(0.0, 1.0, new Duration(TimeSpan.FromSeconds(0.7))) { FillBehavior = FillBehavior.HoldEnd }; FadeStoryboard.Children.Add(FadeAnimation); Storyboard.SetTargetName(FadeAnimation, grid.Name); Storyboard.SetTargetProperty(FadeAnimation, new PropertyPath(Grid.OpacityProperty)); } // flipping the animation around void InputManager_KeyDown(object sender, KeyEventArgs e) { if (e.Key == Key.Space) { if (!ViewModel.IsActive) { FadeAnimation.From = grid.Opacity; FadeAnimation.To = 1.0; FadeStoryboard.Begin(this); ViewModel.IsActive = true; } else if (ViewModel.IsActive) { FadeAnimation.From = grid.Opacity; FadeAnimation.To = 0.0; FadeStoryboard.Begin(this); ViewModel.IsActive = false; } } }

[编辑]通过一些额外的调试,我发现它是在淡入时主动设置为false的动画,并在淡出时将其设置为true,这与我希望它做的完全相反 .

[编辑2]当我完全抛弃动画时,我得到完全相同的问题,只是改变隐藏的可见性 . 当我将其隐藏时,它会启用,当我将其设为可见时禁用 .



【本文地址】


今日新闻


推荐新闻


CopyRight 2018-2019 办公设备维修网 版权所有 豫ICP备15022753号-3